package com.zmn.oms.common.constant;

import com.google.common.collect.Lists;

import java.util.List;

/**
 * 类描述：消息发送控制开关
 *
 * @author yule
 * @date 2020/12/24 14:13
 */
public class MessageControlSwitchConsts {
    /**
     * 订单消息全部自动触发节点开关
     * 订单分单，派单，接单，工程师上门，工单完成，工单取消，退款申请，保修卡，计价器定价，计价器变更，保修卡延保，申请优惠
     */
    public final static List<Integer> noticeAllTypes = Lists.newArrayList(
            OrderLogConsts.ORDER_LOG_TYPE_CONFIRM,// 确认
            OrderLogConsts.ORDER_LOG_TYPE_ASSIGN,// 订单分单
            OrderLogConsts.ORDER_LOG_TYPE_DISTRIBUTE,// 派单
            OrderLogConsts.ORDER_LOG_TYPE_TAKE,// 接单
            MessageRuleIdConsts.MESSAGE_GLOBAL_RETAKE_NODE_MARK,// 再次接单
            OrderLogConsts.ORDER_LOG_TYPE_VISIT,// 工程师上门
            OrderLogConsts.ORDER_LOG_TYPE_COMPLETE,// 工单完成
            OrderLogConsts.ORDER_LOG_TYPE_CANCEL,// 工单取消
            // OrderLogConsts.ORDER_LOG_TYPE_WARRANTY,// 保修卡
            // OrderLogConsts.ORDER_LOG_TYPE_UPDATE_WARRANTY,// 保修卡延保
            OrderLogConsts.ORDER_LOG_TYPE_REFUND_RESULT, // 退款结果
            OrderLogConsts.ORDER_LOG_TYPE_REMINDER // 催单
    );

    /**
     * 短信节点控制开关
     */
    public final static List<Integer> textAbleSendRuled = Lists.newArrayList(
            OrderLogConsts.ORDER_LOG_TYPE_CONFIRM,// 确认
            //OrderLogConsts.ORDER_LOG_TYPE_ASSIGN,// 订单分单
            MessageRuleIdConsts.MESSAGE_GLOBAL_CONFIRM_NO_LOGIN_NODE_MARK,// 订单分单未登入全局节点标示
            OrderLogConsts.ORDER_LOG_TYPE_TAKE,// 接单
            MessageRuleIdConsts.MESSAGE_GLOBAL_UPDATE_DUTYTIME_NODE_MARK,// 改约
            MessageRuleIdConsts.MESSAGE_GLOBAL_RETAKE_NODE_MARK,// 再次接单
            MessageRuleIdConsts.MESSAGE_GLOBAL_VISIT_TIME_OUT_NODE_MARK,// 迟到安抚
            OrderLogConsts.ORDER_LOG_TYPE_VISIT,// 工程师上门
            OrderLogConsts.ORDER_LOG_TYPE_COMPLETE,// 工单完成
            OrderLogConsts.ORDER_LOG_TYPE_CANCEL,// 工单取消
            OrderLogConsts.ORDER_LOG_TYPE_REFUND_RESULT, // 退款结果
            MessageConsts.ZMN_MSG_RULEID_DISTRIBUTE_TIMEOUT_CONFIRM // 派单超时通知用户
    );

    /**
     * 百度消息可发送的规则id控制开关
     */
    public final static List<Integer> baiDuAbleSendRuled = Lists.newArrayList(
            MessageRuleIdConsts.ZMN_MSG_RULEID_ASSIGN,
            MessageRuleIdConsts.ZMN_MSG_RULEID_TAKE,
            MessageRuleIdConsts.ZMN_MSG_RULEID_MASTER_VISIT,
            MessageRuleIdConsts.ZMN_MSG_RULEID_COMPLETE,
            MessageRuleIdConsts.ZMN_MSG_RULEID_CANCEL
    );

    /**
     * 微信消息禁用发送的规则id控制开关
     */
    public final static List<Integer> weixinDisableSendRuled = Lists.newArrayList(
            MessageConsts.ZMN_MSG_RULEID_DISTRIBUTE_TIMEOUT_CONFIRM // 派单超时通知用户
    );
}
